﻿$(document).ready(function () {
    Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(function () {
        $("#chkSelectionnerTout").bind("click", function () {
            var checked = $(this).is(":checked");
            $("[id*=gvResultats] input[type=checkbox]").not("#chkSelectionnerTout").prop("checked", checked);
        });

        if (!$("#chkSelectionnerTout").length) {
            $("[id*=gvResultats] input[type=checkbox]").bind("click", function () {
                var isChecked = $(this).is(":checked");
                if (!isChecked) return;

                var tv = $("[id*=gvResultats]");
                if (!tv) return;
                if (tv.length <= 0) return;

                var chk = $(this);
                $("input[type=checkbox]", tv).each(function () {
                    if ($(this)[0].id == chk[0].id) return;
                    $(this).prop('checked', false);
                });
            });
        }
    });
});

function validResearch(containerId) {
    if (isSearchPageEmpty(containerId)) {
        var answer = confirm("Vous n'avez spécifié aucun filtre.\nDésirez-vous réellement tout afficher ?");
        if (answer == true) {
            return true;
        }
        else {
            return false;
        }
    }
    else {
        return true;
    }
}

function isSearchPageEmpty(containerId) {
    //Pour chaque textbox dans mon container (http://stackoverflow.com/questions/4010356/form-validation-get-all-input-type-text-and-validate)
    var textboxes = document.querySelectorAll("#" + containerId + " input[type=text]");
    for (var i = 0; i < textboxes.length; i++) {
        if (textboxes[i].value != "") {
            return false;
        }
    }

    //Pour chaque dropdownlist
    var comboboxes = document.querySelectorAll("#" + containerId + " select");
    for (var i = 0; i < comboboxes.length; i++) {
        // Sinon je regarde sa valeur
        if (comboboxes[i].value == "" || comboboxes[i].value == "-1") {
        }
        else {
            return false;
        }

    }
    return true
}